1. Statement of the Technical Field
The present invention relates to the field of collaborative computing and more particularly to a model that facilitates collaborative computing system development.
2. Description of the Related Art
Collaborative computing provides a means for users to pool their strengths and experiences to achieve a common goal. For example, a common goal may be an educational objective, the completion of a software development project or even creation and use of a system to manage human resources. A collaborative computing environment is defined by (1) a particular context, i.e. the objective of the environment, (2) membership, i.e., the participants in the environment, and (3) a set of roles for the members. Roles are names given to the people in the environment which dictate access to the resources and tools within the environment as well as define the behavior of the community members.
Collaborative computing environments are customized to meet the developers' and users' needs. For example, customized collaborative computing environments such as team workspaces, emeetings, virtual classrooms and communities are known. Each of these types of environments is implemented using shared resources as a building block to create the environment. Shared resources for all environments have general characteristics such as a purpose/title, and the premise that they can be created, deleted, cloned, renamed, expired, archived and restored, etc. Shared resources may also be customized to fulfill the objectives of the environment. For example, virtual classrooms employ the general characteristics of the shared resources but further specialize the shared resources in the areas of defining membership roles, e.g., teacher, student, etc., the definition of content, e.g., courses, and provide a shared resource directory customized in the form of a list of courses.
Current customized collaborative computing environments must each be developed and configured individually, that is, each instance of a collaborative computing environment can only be of one customized type, e.g., a virtual classroom. As such, present systems require that each separate computing environment be developed from the ground up, even though the separate environments may have the need for common business processes, e.g., stock quotations, web conferencing interface, news, etc. Put another way, known collaborative computing systems do not provide a way to create an environment in which arbitrary business process objects can be placed and customized to fit the needs of the desired environment.
The result is collaborative computing environments which are customized and not readily usable as a way to build future environments. It is desirable to have a method and system which provides a collaborative computing environment framework that can be specialized into collaborative computing environment applications in a matter that allows for templatable and provisionable specialized applications. As such, it is also desirable to have a collaborative computing system and method which facilitates the binding of people to tools and resources in a named addressable space by providing a framework for development thereof.